The “Full-Stack” Developer
Let's explore who a full-stack developer is and what are the merits and demerits of being a generalist.
Who is a “full-stack” developer?#
Many generalists just aren’t. We all specialize in something because it is impossible to know everything. For a long while, the term “full-stack developer” was in vogue. This trended because it was a useful fiction:
- It helped employers justify expensive hires as pluripotent deals (“Two in one!”).
- It helped developers market themselves as capable of doing more.
- It helped educators/Boot-camps sell the idea that you need full stack education.
The truth, of course, is that “full-stack” developers tended to be backend developers that learned a bit of JavaScript:
With some specialized platform-as-a-service services like Firebase and Amplify, frontend devs could also get in on the game:
Of course, this is a tired meme now, and more enlightened takes, like hiring “full-stack teams,” have emerged.
Marketing yourself as a generalist is difficult#
It is also understood that marketing yourself as a generalist is more difficult because people don’t know what box to place you in. It can be a recipe for overpromising and under-delivering when it comes to working with you.
Benefits of being generally capable#
However, there are clear benefits to being generally capable. If you are on a small startup team, you will generalize and handle things that you’ve never trained for, which makes you a GREAT generalist hire for future teams. Even in a large company, being able to speak the language of your counterparts can help you get what you need more effectively. Plus, nobody said that being a “generalist” has to mean exactly equal competence on all dimensions.
Leverage vs. Self Sufficiency
“T Shaped” and “Pi Shaped”